package org.bl.chat.websocket.dto;

import com.alibaba.fastjson.JSONObject; // 假设使用 Fastjson
import lombok.Data; // 推荐使用 Lombok 简化代码

@Data
public class MessageWrapper {
    
    /**
     * 消息类型标识符 (前端根据此字段进行消息区分)
     */
    private String type;

    /**
     * 实际的消息内容/有效载荷 (可以是任何 Java 对象)
     */
    private Object payload;

    public MessageWrapper(String type, Object payload) {
        this.type = type;
        this.payload = payload;
    }

    /**
     * 将此 Wrapper 对象转换为 JSON 字符串的方法
     * * @return JSON 字符串
     */
    public String toJsonString() {
        // 使用 Fastjson 进行序列化
        return JSONObject.toJSONString(this);
    }
}